function hash(_0x20318d) {
  function _0x1a7239(_0x4adb5, _0x383297) {
    return (_0x4adb5 & 2147483647) + (_0x383297 & 2147483647) ^ _0x4adb5 & 2147483648 ^ _0x383297 & 2147483648;
  }

  function _0x1f7462(_0x199638) {
    var _0x3a5325 = "0123456789abcdef";
    var _0x20b325 = "";

    for (var _0x5f0433 = 7; _0x5f0433 >= 0; _0x5f0433--) {
      _0x20b325 += _0x3a5325["charAt"](_0x199638 >> _0x5f0433 * 4 & 15);
    }

    return _0x20b325;
  }

  function _0x4a7dc4(_0x320d7d) {
    var _0x4702bb = (_0x320d7d["length"] + 8 >> 6) + 1,
        _0x2c9053 = new Array(_0x4702bb * 16);

    for (var _0x390523 = 0; _0x390523 < _0x4702bb * 16; _0x390523++) {
      _0x2c9053[_0x390523] = 0;
    }

    for (_0x390523 = 0; _0x390523 < _0x320d7d["length"]; _0x390523++) {
      _0x2c9053[_0x390523 >> 2] |= _0x320d7d["charCodeAt"](_0x390523) << 24 - (_0x390523 & 3) * 8;
    }

    _0x2c9053[_0x390523 >> 2] |= 128 << 24 - (_0x390523 & 3) * 8;
    _0x2c9053[_0x4702bb * 16 - 1] = _0x320d7d["length"] * 8;
    return _0x2c9053;
  }

  function _0xfdc9ef(_0x4c0a54, _0x3ffddd) {
    return _0x4c0a54 << _0x3ffddd | _0x4c0a54 >>> 32 - _0x3ffddd;
  }

  function _0x2aa763(_0x3197b1, _0x46d2a2, _0x1bd1b4, _0x4ba110) {
    if (_0x3197b1 < 20) {
      return _0x46d2a2 & _0x1bd1b4 | ~_0x46d2a2 & _0x4ba110;
    }

    if (_0x3197b1 < 40) {
      return _0x46d2a2 ^ _0x1bd1b4 ^ _0x4ba110;
    }

    if (_0x3197b1 < 60) {
      return _0x46d2a2 & _0x1bd1b4 | _0x46d2a2 & _0x4ba110 | _0x1bd1b4 & _0x4ba110;
    }

    return _0x46d2a2 ^ _0x1bd1b4 ^ _0x4ba110;
  }

  function _0x255856(_0x560d2d) {
    return _0x560d2d < 20 ? 1518500249 : _0x560d2d < 40 ? 1859775393 : _0x560d2d < 60 ? -1894007588 : -899497514;
  }

  var _0x4e08f5 = _0x4a7dc4(_0x20318d);

  var _0x177dc5 = new Array(80);

  var _0x4d85db = 1732584193;

  var _0x58a568 = -271733879;

  var _0x4c24a4 = -1732584194;

  var _0x3eef0e = 271733878;

  var _0x40ccda = -1009589776;

  for (var _0x60e373 = 0; _0x60e373 < _0x4e08f5["length"]; _0x60e373 += 16) {
    var _0x183dae = _0x4d85db;
    var _0x42daa1 = _0x58a568;
    var _0xe32d59 = _0x4c24a4;
    var _0x175c1c = _0x3eef0e;
    var _0x29806e = _0x40ccda;

    for (var _0x2d2564 = 0; _0x2d2564 < 80; _0x2d2564++) {
      if (_0x2d2564 < 16) {
        _0x177dc5[_0x2d2564] = _0x4e08f5[_0x60e373 + _0x2d2564];
      } else {
        _0x177dc5[_0x2d2564] = _0xfdc9ef(_0x177dc5[_0x2d2564 - 3] ^ _0x177dc5[_0x2d2564 - 8] ^ _0x177dc5[_0x2d2564 - 14] ^ _0x177dc5[_0x2d2564 - 16], 1);
      }

      t = _0x1a7239(_0x1a7239(_0xfdc9ef(_0x4d85db, 5), _0x2aa763(_0x2d2564, _0x58a568, _0x4c24a4, _0x3eef0e)), _0x1a7239(_0x1a7239(_0x40ccda, _0x177dc5[_0x2d2564]), _0x255856(_0x2d2564)));
      _0x40ccda = _0x3eef0e;
      _0x3eef0e = _0x4c24a4;
      _0x4c24a4 = _0xfdc9ef(_0x58a568, 30);
      _0x58a568 = _0x4d85db;
      _0x4d85db = t;
    }

    _0x4d85db = _0x1a7239(_0x4d85db, _0x183dae);
    _0x58a568 = _0x1a7239(_0x58a568, _0x42daa1);
    _0x4c24a4 = _0x1a7239(_0x4c24a4, _0xe32d59);
    _0x3eef0e = _0x1a7239(_0x3eef0e, _0x175c1c);
    _0x40ccda = _0x1a7239(_0x40ccda, _0x29806e);
  }

  return _0x1f7462(_0x4d85db) + _0x1f7462(_0x58a568) + _0x1f7462(_0x4c24a4) + _0x1f7462(_0x3eef0e) + _0x1f7462(_0x40ccda);
}

function go(_0x56990c) {
  var _0x146119 = new Date();

  function _0x12790c(_0x361f7f, _0x2cf202) {
    var _0x5d33de = _0x56990c["chars"]["length"];

    for (var _0x1ea83a = 0; _0x1ea83a < _0x5d33de; _0x1ea83a++) {
      for (var _0x1dcbc7 = 0; _0x1dcbc7 < _0x5d33de; _0x1dcbc7++) {
        var _0x1ed1a3 = _0x2cf202[0] + _0x56990c["chars"]["substr"](_0x1ea83a, 1) + _0x56990c["chars"]["substr"](_0x1dcbc7, 1) + _0x2cf202[1];

        if (hash(_0x1ed1a3) == _0x361f7f) {
          return [_0x1ed1a3, new Date() - _0x146119];
        }
      }
    }
  }

  var _0x32ffc5 = _0x12790c(_0x56990c["ct"], _0x56990c["bts"]);

  if (_0x32ffc5) {
    var _0x4d7d74;

    if (_0x56990c["wt"]) {
      _0x4d7d74 = parseInt(_0x56990c["wt"]) > _0x32ffc5[1] ? parseInt(_0x56990c["wt"]) - _0x32ffc5[1] : 500;
    } else {
      _0x4d7d74 = 1500;
    }
  
  return _0x56990c["tn"] + "=" + _0x32ffc5[0] + ";Max-age=" + _0x56990c["vt"] + "; path = /";

}}